#! /usr/bin/env python3
# -*- coding: utf-8 -*-
# author: maxiao
# date: 2023-05-15 13:50
# description: 通过选择排序对输入的数据进行升序排列


def selection_sort(data: list) -> list:
    """
    对输入的列表进行升序排列（选择排序）
    """
    # 经过第n轮比较，将小值与第n个元素进行互换
    count = len(data)
    for i in range(1, count):
        # 存放小值对应的索引
        min_n = i-1
        # 遍历比较
        for j in range(i, count):
            if data[j] < data[min_n]:
                min_n = j
        # 经过一轮比较后进行互换操作
        data[i-1], data[min_n] = data[min_n], data[i-1]
    return data


def main():
    input_data = input("请输入待排序的数字、以空格间隔：")
    data = [ int(item) for item in input_data.split() ]
    result = selection_sort(data)
    print("经过选择排序后的结果-----> ", result)


main()
    
